Marathon-Phile Juggler is yet another program designed to manage your Marathon files. I wrote it because I was not satisfied with any of the current file managers. One unique feature is that you are ability to save your sets as double-clickable icons. Another is that Phile Juggler will apply patches to your Marathon files before start-up and save the old resources--no longer will you need to have a separate copy for each patch.
Getting Started
The first thing you need to do is put everything in its proper place. Phile Juggler should be in the same folder as the Marathon application(s). The Shapes and Sounds file should also be in the same folder. Put Map, Music, and Physics files in their appropriate folders, named "Maps", "Music", and "Physics", respectively. All your patches should go in a folder names "Patches".
Using Phile Juggler
When you open Phile Juggler, it will search the appropriate folders for the various Marathon Files and place their names in the pop-up menus or list box (If Phile Juggler loads up slowly, you probably need to rebuild your desktop, see note below.)
Making a Set
To make a set, select the various files you want in the set (as well as if you want to kill the Finder), choose the new set command, and name the set. The new set will now appear in the sets pop-up menu. After you make a set, don't change the names of the files in the set since all that is saved is the name of the file. Note: Sets made any version of Phile-Juggler prior to 1.0 are incompatible with this current version.
Deleting a Set
To delete a set, just choose the set from the Sets pop-up menu and choose the delete
command.
Saving a Set as an Icon
This is the neat part, and probably the main way you'll use Phile-Juggler. Select a set, or choose the files you want in the set and choose the Save Set as Icon command then select a name and location for the set. Whenever you click on the icon for the set, Phile-Juggler will open, do its thing, and then launch Marathon automatically.
Launching Marathon
To launch Marathon simply click on the Launch Marathon button. Phile Juggler will take a moment to do it's bussiness; if Kill Finder is checked, the Finder will quit; then Marathon will launch.
A Tip on using Phile Juggler
With Phile Juggler, you don't need to make a different copy of your files every time you want to apply a patch, however, if you frequently switch between very large patches, it might save time to have separate copy for each patch. The best use of the patch feature is with the 'term' resources that go with the maps. In the future, I may be able to have it to where Marathon will look in the right place for all the different patch files (excluding the ResCompare patches) instead of having to copy them to the support files.
The unspeakable things Phile Juggler does to your files
Phile Juggler modifies Marathon in two ways. The first thing Phile Juggler does is modify your Marathon application so that it looks in the appropriate folders for the Maps, Music, Shapes, Sounds, and Physics files you specified. Next Phile Juggler looks to see which patches were applied previously so that it won't reapply them if they were. Then it makes a backup of the resources that are about to patched and applies that patches. Finally, it restores all of the resources that were saved previously and not patched this time around.
Note on Patches: These don't have to be self-installing patches, they just need to contain Marathon-related files. All of the Marathon-related self installers--Shape Shuttle, Sound Installer, etc--have the resources in their normal format. Some self-installing patches, however, like those made with ResCompare--ones that have little "patched" application icons--save their resources in a special format, and currently the only patches of that type that Phile Juggler recognizes are those made by ResCompare, which is the only type I've seen used so far for Marathon patches. If you encounter any others used with Marathon, please inform me so I can add support for them.
TroubleShooting
As you can probably surmise from the above section a lot could go wrong despite my best programming efforts. At present, the error handling abilities are somewhat limited. It may take some time for the resource files to get updated after the progress dialog box goes away, as long as you can still move your cursor, you're fine. If you get dialog boxes like "HandleStream.cp...Exception Thrown" you'll need to increase Phile Juggler's partition--this should only happen if you're patching those really big 'PICT' resources. I'll need to rewrite the code to handle those low-memory situations. I've done my best to keep the application's partition as small as possible by using temporary memory so you can have more room for Marathon to launch in.
Length of Phile-Juggler startup
Depending on the amount of files on your hard drive and other vagaries, Phile Juggler will either load up really quickly or fairly slowly. For example, it loads up very quickly on my external drive that has few files, but kinda slow on my internal drive that has lot of 'em. I've sped it somewhat from earlier versions, however, it is possible it might not find all your files--if this happens, let me know. I should have a fix for all these problems in the next version.
Obligatory "don't blame me if your computer blows up" section
If the above section on what Phile-Juggler does to your files didn't scare you, let me reiterate that this program modifies your Marathon application, support files, and patches, so be sure to have backups.
Version release history
0.91b - first release version
1.0 - faster file search on large volumes
support for patches
filenames now listed alphabetically
quit Finder on Marathon launch
raised file limit from 50 to 255
snazzier interface and cool-looking icons
Improvements for future versions
Phile-Juggler is very much a work in progress, and I intend to refine and add more features as time goes on, so please feel free to offer your suggestions. Among the planned improvements I have in mind:
Write an optional extension that loads into Marathon's heap that patches the resource loading Toolbox functions, so that it will load the appropriate resources from the patch file instead of the usual files, making patching the files unnecessary.
Adding a file and patch browser and the ability to add comments to your files and sets, so you can make sense of everything.
Make sets additive instead of exclusive, like Extensions Manager.
Figure out way to associate saved games with sets, possibly by including the functionality in the above mentioned patch.
Speed up file searches even more. And once Apple makes the Resource Manager native, I'll make it a fat binary.
Please send bug reports, comments, suggestions, hate mail, etc. to rickb@intellinet.com.